package com.winner.data.util;

import cn.hutool.core.util.StrUtil;
import com.winner.data.entity.User;

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;

/**
 * lambda按自己指定的顺序排序
 *
 * @author wangxinle5
 * @since 2023-05-19
 */
public class SortUtil {

    public static void main(String[] args) {
        // 创建一个 User 列表
        List<User> userList = new ArrayList<>();
        userList.add(new User(18L, "李四"));
        userList.add(new User(18L, "张三"));
        userList.add(new User(18L, "王五"));

        // 使用Stream和Comparator实现排序
        List<User> sortedList = userList.stream().sorted(Comparator.comparing(a -> {
            if (StrUtil.equals("张三", a.getName())) {
                return 0;
            }
            return 1;
        })).collect(Collectors.toList());

        // 输出排序后的列表
        System.out.println(sortedList);
    }
}
